<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of DAOSujet
 *
 * @author julien
 */
require_once dirname(__FILE__) . '/../model/Sujet.php';
require_once dirname(__FILE__) . '/BaseDAO.php';

class DAOSujet extends BaseDAO {

    public function __construct() {
        parent::__construct();
    }

    public function getAllSujets() {
        try {
            $requete = "SELECT * FROM sujet ORDER BY date ASC ";
            $result = $this->connection->query($requete);
            $tabSujets = array();
            while ($ligne = $result->fetch()) {
                $tabSujets[] = new Sujet($ligne);
            }
            $result->closeCursor();
            return $tabSujets;
        } catch (Exception $e) {
            throw new Exception("Problème lors de la récupération des sujets");
        }
    }

    public function getSujet($id_sujet) {
        try {

            $requete = "SELECT * FROM sujet WHERE id=" . $id_sujet;
            $resultats = $this->connection->query($requete);
            if ($ligne = $resultats->fetch()) {
                $oSujet = new Sujet($ligne);
                return $oSujet;
            } else {
                throw new Exception("Aucun sujet present dans la base de données
                    correspodant à l'identifiant " . $id_sujet);
            }
        } catch (Exception $e) {
            throw new Exception($e->getMessage());
        }
    }

    public function createSujet($titre, $sujet) {
        try {
            $requete = "INSERT INTO sujet(id,titre,date,sujet) VALUES(''," .
                    $titre . ",NOW()," .
                    $sujet . ")";
            $result = $this->connection->exec($requete);
            if ($result == 1) {
                return TRUE;
            } else {
                return FALSE;
            }
        } catch (Exception $e) {
            throw new Exception("Problème lors de l'insertion du mot.\n" .
                    $e->getMessage());
        }
    }

    public function updateSujet($id, $titre, $sujet) {
        
    }

    public function deleteSujet($id) {
        
    }

}

?>
